User blog:Rgetar/Taranovsky's C - BB correspondence
Today I read translation of AAAgoogology's user page "TaranovskyのC表記の解析" by Rpakr and koteitan about Taranovsky's C, and I thought that there may be some correspondence between Taranovsky's C and my booster-base (BB) expressions. I noticed some similarities between Taranovsky's C and BB in the first half of 2019, but it was before I came up with "L" and "R" in July 2019, so I thought that there is not much similarity. Converting Taranovsky's C into BB and backwards Taranovsky's C expression ↔ BB expression: :C(a, b) ↔ ab :0 ↔ empty string :Ωn ↔ Cn, where n ≥ 1 That is :Ω1 ↔ Ω :Ω2 ↔ L :Ω3 ↔ R :Ω4 ↔ S :... Because :Ωn = C(Ωn + 1, 0) that is :Ωn = + 1 (here Ωx are not converted into BB) :Ω1 = Ω2, Ω2 = Ω3, Ω3 = Ω4, ... but :Ω = L, L = R, R = S, ... Fundamental sequences In the translation it is said that Ωn does not have a fundamental sequence (similar is also true for some C(a, b) expressions), but in BB all expressions have a fundamental sequence (particularly, Ω, L, R, S, ... are regular and have fundamental sequences consisting of all ordinals less than them). I think that expressions without a fundamental sequence in Taranovsky's C correspond to BB expressions with uncountable cofinality. Examples :0 = 0 = empty string :1 = C(0, 0) = [] :2 = C(0, C(0, 0)) = [][] = []1 :ω = C(C(0, 0), 0) = [[]] = 1 :ω + 1 = C(0, C(C(0, 0), 0)) = [][[]] = []ω :ω2 = C(C(0, 0), C(C(0, 0), 0)) = [[]][[]] = 1ω :ω2 = C(C(0, C(0, 0)), 0) = [[][]] = 2 :ωω = C(C(C(0, 0), 0), 0) = [] = ω :ε0 = C(Ω1, 0) = Ω :ε02 = C(C(Ω1, 0), C(Ω1, 0)) = ΩΩ = ε0ε0 :ε0ω = C(C(0, C(Ω1, 0)), C(Ω1, 0)) = [[]Ω]Ω = + 1ε0 :ε1 = C(Ω1, C(Ω1, 0)) = ΩΩ = Ωε0 :εω = C(C(0, Ω1), 0) = [[]Ω] = + 1 :εε0 = C(C(C(Ω1, 0), Ω1), 0) = [ΩΩ] = [ε0Ω] = + ε0 :ζ0 = C(C(Ω1, Ω1), 0) = [ΩΩ] = Ω2 :εζ0 + 1 = C(Ω1, C(C(Ω1, Ω1), 0)) = Ω[ΩΩ] = Ωζ0 :ζ0 = C(C(Ω1, Ω1), C(C(Ω1, Ω1), 0)) = [ΩΩ][ΩΩ] = Ω2ζ0 :φ3(0) = C(C(Ω1, C(Ω1, Ω1)), 0) = [ΩΩΩ] = [ΩΩ2] = Ω3 :φω(0) = C(C(C(0, Ω1), Ω1), 0) = [[[]Ω]Ω] = [+ 1Ω] = Ωω :φφω(0)(0) = C(C(C(C(C(C(0, Ω1), Ω1), 0), Ω1), Ω1), 0) = [[[[[[]Ω]Ω]]Ω]Ω] = [[φω(0)Ω]Ω] = [+ φω(0)Ω] = Ωφω(0) :Γ0 = C(C(C(Ω1, Ω1), Ω1), 0) = [[ΩΩ]Ω] = [[Ω2Ω] = Ω2 :Γ1 = C(C(C(Ω1, Ω1), Ω1), C(C(C(Ω1, Ω1), Ω1), 0)) = [[ΩΩ]Ω][[ΩΩ]Ω] = Ω2Γ0 :φ(1, 1, 0) = C(C(Ω1, C(C(Ω1, Ω1), Ω1)), 0) = [Ω[ΩΩ]Ω] = [ΩΩ2] = + Ω :φ(2, 0, 0) = C(C(C(Ω1, Ω1), C(C(Ω1, Ω1), Ω1)), 0) = [[ΩΩ][ΩΩ]Ω] = [[Ω2Ω2] = Ω22 :φ(ω, 0, 0) = C(C(C(0, C(Ω1, Ω1)), Ω1), 0) = [[[]ΩΩ]Ω] = [+ 1Ω] = Ω2ω :φ(1, 0, 0, 0) = C(C(C(Ω1, C(Ω1, Ω1)), Ω1), 0) = [[ΩΩΩ]Ω] = [Ω3Ω] = Ω3 :SVO = C(C(C(C(0, Ω1), Ω1), Ω1), 0) = [[[[]Ω]Ω]Ω] = [ΩωΩ] = Ωω :LVO = C(C(C(C(Ω1, Ω1), Ω1), Ω1), 0) = [[[ΩΩ]Ω]Ω] = [Ω2Ω] = ΩΩ :BHO = C(C(Ω2, Ω1), 0) = [LΩ] = Ω2 :TFB = C(C(Ω2, C(C(0, Ω2), 0)), 0) = [L[[]L]] = [L+ 1] = [LΩω] = + 1 :ψ0(ΩΩ) = C(C(C(Ω1, Ω2), 0), 0) = [[ΩL]] = L + Ω = ΩΩ :ψ0(ψI(0)) = C(C(C(C(Ω3, 0), Ω2), 0), 0) = [[RL]] = [[LL]] = L2 = I :C(C(C(Ω3, Ω2), 0), 0) = [[RL]] = L2 = M Comparison Also I read in Hyp cos' user page "Taranovsky's various ordinal notations", "Comparison" section: "Terms can be compared and connected with ">", "<" or "=". Firstly, write terms in postfix form, i.e. delete all the "(", ")" and "," and then reverse the string. Secondly, compare postfix forms in lexicographical order, where "C" < "0" < "Ω" (or Ωn being largest single letter)." I thought: "Will it work in my BB system?" BB alphabet consists of 3 symbols: """ and some letter, designating some large cardinal, say, "C". I thought that strings can be reversed and then compared lexicographically, where "< "" < "C". I checked, will it work in Ordinal Explorer v6.1. I replaced comparison function function compare(st1,st2:string):shortint; var q1,q2,l1,l2:integer; c1,c2:string; begin if st1=st2 then result:=0 else if st1='' then result:=-1 else if st2='' then result:=1 else if (rightstr(st1,1)=col) and (rightstr(st2,1)<>col) then result:=1 else if (rightstr(st2,1)=col) and (rightstr(st1,1)<>col) then result:=-1 else if rightstr(st1,1)=col then result:=compare(leftstr(st1,length(st1)-1),leftstr(st2,length(st2)-1)) else repeat l1:=length(st1); l2:=length(st2); q1:=getls(st1,'q2:=getls(st2,'['); delete(st1,l1,1); delete(st2,l2,1); result:=compare(copy(st1,q1+1,l1),copy(st2,q2+1,l2)); if result=0 then begin delete(st1,q1,l1); delete(st2,q2,l2); if st1='' then result:=-1 else if st2='' then result:=1; end; until result<>0; end; with function compare(st1,st2:string):shortint; begin if st1=st2 then result:=0 else result:=ifthen(reversestring(st1)>reversestring(st2),1,-1); end; and yes, it does work (I compared lists of 11689 ordinals of pentuple expansion, generated using old and new "compare" function, and they looks identical), and the program became faster ~ 3 times (list of 967 ordinals of quadruple expansion was created in ~ 6 seconds using old "compare" function, and in ~ 2 seconds using new "compare" function). But I had to designate the "large cardinal" with small Latin letter, since capital Latin letters are situated in Unicode before "[" and "". Category:Blog posts